Address selection control apparatus



May 2 1967 L. A. MlcHAEL 3,317 902 F' ADDRESS SELECTION CONTROL APPARATUS :Lled Aprll G, 1964 9 Sheets-Sheet 1 May 2, 1967 l.. A. MICHAEL ADDRESS SELECTION CONTROL APPARATUS 9 Sheets-Sheet 2 Filed April 6, 1964 Ag: mm2

)ONNN May 2, 1967 l.. A. MICHAEL 3,317,902

ADDRESS SELECTION CONTROL APPARATUS May 2, 1967 A. MICHAEL ADDRESS SELECTION CONTROL APPARATUS 9 Sheets-Sheet 4 Filed April 6, 1964 @NNN fw .QE ov .0...-

. so: 2mm

uv E

@NNN

TT. ,L

i .I T T T T T LLJNLLL .1

May 2, 1967 l.. A. MICHAEL.

ADDRESS SELECTION coNfrRoL APPARATUS 9 Sheets-Sheet 5 Filed April e, 1964 mQOUmQ mba@ mtm.

May 2, 1967 L. A. MICHAEL ADDRESS SELECTION CONTROL APPARATUS 9 Sheets-Sheet e Filed April 6, 1964 i H-Hmm nv .GE

May 2, 1967 L A. MICHAEL ADDRESS SELECTION CONTROL APPARATUS Filed April 6, 1964 www E5 @E mDOUmQ mha@ @4mm May 2, 1967 L.. A. MICHAEL 3,317,902

ADDRESS SELECTION CONTROL APPARATUS Filed April G, 1964 9 Sheets-Sheet 8 A B C o i "u A.;

CLOCK WRITE Y& BUMP L S ROS RESET ROS READOUT ROS GOOD O 250 500 750 O 250 SOO 750 0 Z50 500 FIG. 5

9 Sheets-Sheet 9 FIG. 6

DRIVER INHIBIT ADDRESS SELECTION CONTROL APPARATUS 2249 224s 1 To STORE "o" (FROM R RER) I May 2, 1967 Filed April G, 1964 (FRUM CLOCK) INHIBIT Z A S READ 0 T0 8K (WRITE 8 T0 16K) (READ 8 T0 ISK) REAR" "PHASE United States Patent O 3,317,902 ADDRESS SELECTION CONTROL APPARATUS Louis A. Michael, Vestal, N.Y., assignor to International Business Machines Corporation, New York, N.Y., a corporation of New York Filed' Apr. 6, 1964, Ser. No. 357,359 6 Claims. (Cl. 340-1725) This invention relates to address selection control apparatus for data processing systems, and relates more particularly to rsuch apparatus for selectively, and with a minimum of decode circuitry, addressing a selectable address in one of a plurality of data storage areas of unequal storage capacity.

It has been proposed to provide a data processing system having a main memory unit comprising a main storage area and a so-called bump storage area. The main storage area may, for sake of illustrati-on, have 8,192 addresses of conventional storage. The bump storage area may have, `for example, 512 addresses that provide increased address capacity to take the place of considerable hardware that otherwise would have to be separately included as part of a central processing unit; c g., index registers, ibase address registers, floating point working registers, accumulators, and other devices for storage of control words, special purpose characters, or the like. Obviously, the main and bump areas could be addressed by separate decode circuitry, with the bump area being essentially a totally independent ancillary smaller memory unit. However, for reasons of economy and compactness, it would be prefenable to provide a decode arrangement wherein at least certain portions of the decode circuitry can be conditioned to serve selectively during addressing of either the main storage area or the bump storage area. To select one of the 8192 main area addresses of course requires an address register means having a much larger number of data-containing bit positions than is necessary to address one of the 512 addresses in the bump area.

The invention can best be understood by an illustration. Assume that four address register `bit positions are used to provide any one of sixteen possible binary outputs to control energization of a corresponding drive line of one group controlling selection within one dimension of the main area address; and assume further that only two of these same four bit positions are needed to provide any one of =four possible binary o-utputs to control energization of a corresponding drive line of an entirely different group controlling selection within the equivalent dimension of a bump area address. Under such circumstances, in order positively to assure against incorrect addressing it will be necessary to nullify or render ineffective any data stored in those (two) bit positions not actually needed to select the desired bump address.

Accordingly, it is one object of this invention to provide an improved, compact, relatively inexpensive apparatus for selectively addressing a selectable address in one of a plurality of data storage areas having unequal numbers of addresses and hence of drive lines controlling selection of said addresses, and wherein certain c-ommon decode circuitry serves during selective addressing of any one of said areas.

Another object of this invention is to provide an improved address selection control apparatus of the above general type embodying means, effective during addressing of a small-capacity storage area, to nullify or render ineffective potentially invalid data that may then be present in all those address register bit positions not actually needed tfor the selection of the address in said smaller storage area, thereby t'o positively assure against incorrect selection of the address in said smaller area.

ICC

Still another object is to provide an address selection control apparatus `for selectively addressing one of a plurality of storage areas of different storage capacity, wherein a signal having a level corresponding to the particular storage area being addressed conditions the decode circuitry, during addressing of a small capacity storage area, to select a unique output from a small group of possible outputs, rather than from the larger group of possible outputs available during addressing of the larger capacity storage area.

According to these objects, there is vprovided an improved apparatus for selectively addressing a selectable data-containing address in one or the other of two data storage areas having different numbers of addresses and hence requiring different numbers of address-decoding drive lines for address selection. A common address register means has a predetermined number of bit positions containing binary coded data or indicia sufficient to select and energize an appropriate one of the large number of drive lines of the larger storage area. Some of these bit positions are used to store binary coded data for controlling energization of an appropriate one of a les-ser number of drive lines contained in an entirely different group and lcontrolling address selection in the smalier storage area. A signal is provided having a level denoting which of the particular storage areas is t-o be addressed. When the smaller storage area is to be addressed, this signal modifies operation of a common decode means for both storage areas, to cause said decode means to select one of the lesser number of drive lines `for the smaller storage area according to the data contained in only some of the predetermined bit positions of the address register `means irrespective of what data the remaining bit positions may contain.

The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of preferred embodiments of the invention, as illustrated in the accompanying drawings, wherein:

FIG. 1 is a diagrammatic representation, laid out in perspective, of an address selection control apparatus embodying the invention, shown associated with a memory unit having data storage areas of unequal storage capacity;

FIG. 2 is a circuit diagram, partly schematic and partly diagrammatic, showing details of certain portions of the basic address decode circuitry;

FIG. 3 is a diagrammatic showing of the gate decode circuitry more clearly illustrating the basic concept of the invention;

FIG. 4, a composite of 4a through 4d, which taken together, constitute a diagrammatic showing of the circuitry for selecting any desired address in any of the storage areas;

FIG. 5 is a timing diagram;

FIG. 6 is a diagrammatic showing of a common inhibitsense system used in the address selection control apparatus; and

FIG. 7 is a diagrammatic showing of another application of the invention.

Description Initially, it is to be noted that the address selection control aparatus described and claimed herein has been disclosed (but not claimed) in the copending application of Gene M. Amdahl et al., entitled Data Processing System, U.S. Ser. No. 357,372, led concurrently hercwith. The reference numerals in the instant application, while generally consecutive, are of an unusual order of magnitude because the same reference numerals have been employed to designate structure in this application which is identical to that disclosed in the Amdahl et al. application. However, if reference to the latter is desired as illustrative of a complete data processing system in which the control apparatus of the invention may be employed, it will help the reader to note that the drawings have been renumbered, such that FIGS. 1 through 6 of this application correspond, respectively, to FIGS. 54, 55, 55A, 56a through 56d, 38a and 62 of the Amdahl et al. application. However, it is submitted that access to and/or reference to the Amdahl et al. application is absolutely not essential to a full understanding of the present invention.

As shown in FIG. 1, a main memory unit 2201 comprises a CPU bump storage area 2202, a unit control word (UCW) bump storage area 2203, a main storage area 2204, an inhibit section 2205 and a sense amplifier section 2206.

As illustrated, the main memory unit 2201, comprises nine core planes arranged in a stack to provide a 9-bit character represented by planes to 7 and a parity plane P adjacent plane 7.

Each core plane comprises a matrix `array of cores having substantially square hysteresis loop characteristics. Sixty-four X drive lines pass through respective rows of cores; and passing through the respective columns of the cores are 128 Y drive lines for main storage area 2204 and eight bump drive lines (tour for each area 2202 and 2203). Thus, the main area 2204 provided 8192 (i.e., 64X 128) addresses 0 to 8191; the 64 4 CPU bump area 2202 provides bump area addresses 04255; and the 64 4 UCW bump area 2203 provides bump area addresses 256 to 511. Unique selection of all nine cores at any selected main or bump address is effected by coincident half-select X and Y (or bump) drive currents.

A desired main area or bump area address is selected by binary coded data stored in predetermined bit positions of an address register means. As illustrated, the address register means comprises M and N register 197, 138, repectively. FIG. l shows the particular data bit position outputs of these registers that are connected to an X read driver decode until 2216 and an X read gate decode unit 2217. As will be explained presently in greater detail, these units 2216 and 2217 provide unique selection of any one of 64 (four groups of 16) X drive lines by a corresponding unique one of 64 circuits in a X read gate transistor unit 2218. The source of current of proper polarity for read is provided by an X read gate terminator unit 2219.

FIG. l also shows the M and N register data bit position outputs that are connected to a Y read driver decode unit 2220 and a Y read gate decode unit 2221 to provide unique selection of any one of 128 (eight groups of 16) Y drive lines by a corresponding unique one of 128 circuits of a Y read gate transistor unit 2222. The source of current of proper polarity for read is provided by a Y read gate terminator unit 2223.

To read an address in the main area 2204, a signal must be up in a use main memory line. That up signal is supplied from a conventional bistable trigger or latch 2213 which is set if a Read Call signal is up in line 346 from the CPU while an Early Bump signal is down in line 428 from the CPU; this is because an inverter 2214 will then provide an up signal in a not early bump line.

If, however, an up signal is in early bump line 428 when a Read Call signal comes up in line 346, latch 2213 will he reset, and provide an up signal in a use bump line. To read an address in UCW bump area 2203, an up signal is supplied from the CPU to be UCW bump line. This is ANDed at 2224 with the up signal in the use bump line to activate the UCW section of a bump read driver decode unit 2225. This, in turn, will complete a circuit through a line 2226 leading to a bump read gate transistor unit 2227. 0n the other hand, to read an address in CPU bump area 2202, signals must be up concurrently in the use bump and CPU bump lines and ANDed at 2228 to activate the CPU section of bump read driver decode unit 2225. This will complete a 4 circuit through a line 2229 leading to the CPU section of the bump read gate transistor unit 2227.

Meanwhile, the N register 0 and 1" address bits will be decoded via a portion of the Y read gate decode unit 2221, and the resultant output will be supplied to the bump read gate transistor unit 2227. As a result, one of the four output lines from either the UCW section or the CPU section of the gate transistor unit 2227 will be uniquely conditioned according to whether line 2226 or 2229 is energized, for causing current to be supplied through one of the total of eight bump drive lines passing in the Y direction through the cores of the bump areas 2203, 2202. Actually, this current is supplied during a read operation from the Y read gate terminator unit 2223 through a unique one of eight diodes indicated generally at 2230, in the manner to be described presently.

The X, Y and bump decode units thus far described control address decoding during READ operations. Identical reference numerals, but primed, have been used to designate the duplicate counterpart structure that provides address decoding during WRITE operations.

FIGS. 2, 3 and 4 show more completely how addressing is accomplished during read and write operations. These figures include details of the various decoding circuits. For sake of illustration, only a basic decode circuit for the Y dimension of a main area address is shown in FIG. 2. Referring to this ligure, a Read/Write clock 2212 is responsive to a Read Call on line 346 or a Write Call on line 347 from the CPU to supply a pulse to a delay line (not shown). Signals tapped oit this delay line provide pulses at desired times as shown in the Main Memory Controls portion of the timing diagram of FIG. 5; and these signals provide internal control of timing for all read and write operations.

At phase read time (see FIG. 5) an up signal is transmitted via a line 2231 to Y read gate terminator 2223 (FIG. 2). Within the terminator, this will turn transistor T1 on, thereby turning transistor T2 off. This will cause the emitter of transistor T3 to go positive, and turn transistor T4 on to supply current from a +40 v. source via a line 2232 and a unique one of the 128 diodes 2233 to a corresponding unique Y drive line 2234. Line 2234 passes through a column of square-hysteresis-looptype ferrite cores 2235 to the collector of an appropriate one of the 12S NPN-type Y read gate transistors 2236 forming part of the unit 2222.

Meanwhile, an uplevel signal will be delivered (in the manner presently to be described) from a Y read gate decode circuit of unit 2221 within the proper address range via an appropriate line 2239 to the base of the selected transistor 2236 to turn it on to operatively connect the associated drive line 2234 to that corresponding one of the lines 2240 leading from the emitter of selected transistor 2236 to the appropriate Y read driver decode circuit 2241 forming part of unit 2220. This circuit is conditioned to serve as a current sink for the decode circuitry at Read Y time (see FIG. 5). At that time the up-level signals provided from a distinctive one of eight binary combinations of data from the bit positions (5, "4, 3) of M register 197 will be ANDed With the up-level Read Y signal provided in a line 2242 by clock 2212, thus turning a transistor T5 on. This will turn a transistor T6 on and complete connection of the selected line 2240 to ground via the emitter of T6.

Note that each of the Y read gate decode circuits of unit 2221 decodes its c-orresponding address lines as soon as received; i.e., these lines are active until the write cycle is completed, and are not subject to control by the clock 2212. Hence, the N bit positions ("1" and 0) and M bit positions (7 and "6) will be decoded irnmediately.

Conversely (and in accordance with the above-meutioned convention of denoting, by a prime, the counterpart structure used during a write operation), current from Y write gate terminator unit 2223' (FIG. 1) is supplied via a unique one of the 128 corresponding unique diodes 2233 and the one of the 128 corresponding unique Y drive line 2234 to the collector of an appropriate one of the 128 NPN-type write gate transistors 2236 of unit 2222. Meanwhile, a signal from the Y write gate decode unit 2221 within the proper address range is delivered to the base of the selected transistor 2236' to turn it on and thus operatively connect the associated drive line 2234 to the output from an appropriate write driver decode circuit 2241 that serves as a current sink.

According to the invention, and as shown in FIG. 3, the Y read gate decode unit 2221 comprises inverters N to provide the complements of the data stored in the bit positions iM6, M7, N"0 and N1." Different groups of two bits and their complements are connected to respective negative AND gates 2243 to provide a first level of decode. Respective gate decoders GD provide second levels of decode, to cause an up-level output in a distinctive one of the sixteen lines 2239a to p corresponding to the binary value of the data actually present in the aforesaid bit positions. For example, an up signal will be provided in line 2239g if the data in M6, M"7," N0," N1" is represented binarily as 01110, which as illustrated corresponds to the notation.

More specifically, each gate decoder GD comprises a pair of diodes which are poled to require up-level signals in the outputs of both negative AND gates 2243 of a selected pair in order to enable a transistor T7 to turn on. With T7 on, an up-level signal will be supplied to the corresponding line 2239 to turn the corresponding read gate transistor 2236 on.

To positively assure against selection of an incorrect address within either bump area, the use main memory line and the data bit from M6 are connected to a negative OR gate 2244; and a branch of the use main memory line and the data bit from M7 are connected to another negative OR gate 224411. Thus, while the Use Main Memory signal is up during addressing of the main storage area 2204, said signal has no eiect on the gate decode circuit. However, as shown in FIG. l, when an Early Bump signal comes up in line 428, the Use Bump signal will come up at read call; and the Use Main Memory signal will hence go down. Thus, irrespective of the data present in M6 and M"7, this Use Main Memory down signal will pass through OR gates 2244, 2244a and be ANDed and inverted at 2243, producing an up signal in a line common to all four addresses having the notation 8:4. Thus, the bump address will be decoded only according to the data contained in the N0 and N"l bit positions of N register 138; i.e., one of the four bump drive lines for the CPU bump area 2202 or UCW bump area 2203 will be energized (depending on whether the CPU bump or UCW bump signal is then up), thereby to limit decoding to one of the 256 (4X 64) valid addresses within the selected bump area.

The manner in which Y dimension drive lines are selectively energized in the main storage area 2204, or either of the bump storage areas 2202, 2203, is more fully shown in FIG. 4. As illustrated in FIGS. 4a to d, there are sixteen groups of sixteen Y gate transistors in the main storage area 2204 (eight such groups being for read, and the other eight groups being for write); and eight bump gate transistors in each of the bump storage areas 2202 and 2203 (in each bump area, four gate transistors being for read, and four for write). The Y read gate terminator unit 2223 and write gate terminator unit 2223' act as a current source during read and write operations, respectively, Whether the selected address be in the main memory area 2204 or in one of the bump storage areas 2202 or 2203.

Thus, to READ address "1024 in the main storage area 2204, current supplied from Y read gate terminator unit 2223 (FIG. 4a) flows via the appropriate isolating diodes 2360, 2233, drive line 2234 for cores 2235, and the collector and emitter of the particular Y read gate transistor 2236 (FIG. 4c) to line 2240 and thence to the current sink provided by the Y read driver decode unit 2220 associated with the "1024-2047 address group. Meanwhile, the particular labeled transistor 2236 will have been turned on by a signal of positive polarity delivered to its base via the line 2239 from the appropriate Y read gate decode unit 2221 associated with the first Y drive line passing through addresses 0-63. Note that address "1024 is selected and defined by 1024" in the driver decode group and 0" from the 0463 gate decode group. Hence, the particular transistor labeled 2236 in FIG. 4 is the only Y read gate transistor that will now be on because it has the only positive base signal. Note also that this transistor 2236 will provide a half-select Y current through the specific Y drive line 2234 that threads the 64 cores 2235 of each of the nine planes of the main memory stack.

Meanwhile, similar decode circuitry (not shown in detail) for the X drive lines will provide the half-select current in the appropriate one of 64 X drive lines. The core address 1024" deiined at the intersection of these selected X and Y drive lines will thus be selected by the coincident half-select X and Y drive currents.

Conversely, to WRITE in main storage area address "1024, current is supplied from Y write gate terminator unit 2223 via diodes 2360', 2233 and drive line 2234 for cores 2235 to the collector of the particular Y write gate transistor labeled 2236 in FIG. 4. Since address 1024" is within the second group "1024-2047 of eight Y write driver decode units 2220 and within Y write gate decode group 0-63, a positive signal will be supplied via line 2239 to the base of Y write gate transistor labeled 2236 and turn it on. This will permit current to iiow through line 2234 threading the cores 2235 and via the collector and emitter of transistor 2236 and line 2240', to the sink provided by the 1024-2047 group of Y write driver decode circuits 2220.

To READ a particular bump address (such as "212" in the CPU bump storage area 2202), current is supplied from Y read gate terminator unit 2223 (FIG. 4a) via diodes 2361, 2362 and through the particular drive line labeled 2363 to the collector of a corresponding NPN- type transistor 2364 which meanwhile is turned on by supply of current to its base via a line 2365 from the appropriate 192-255 portion of the Y read gate decode unit 2221. The address is identified as bump 212 within the CPU bump storage area 2202 (rather than 212 plus "256 or 468 within the UCW bump storage area 2203) by the presence of an up-level CPU bump signal which, when ANDed at 2228 (see FIG. 1) with the Use gizrgp up-level signal, provides an up-level signal in line To WRITE in bump address 212," current is supplied from Y write gate terminator unit 2223' (FIG. 4c) via a diode 2361' and a unique diode 2362' and the correspoding core drive line 2363 to the collector of a unique NPN-type transistor 2364', which meanwhile is turned on by supply of current to its base via line 2365' from the appropriate 192-255 group of the Y write gate decode unit 2221.

Note that all drive lines (like 2234, 2363) passing through the cores are individually driven with a diode (like 2233, 2362) and a gate transistor at the end of such line. However, these diodes are driven in groups of sixteen by additional diodes (like 2360 or 2361) to reduce the capacitance seen by any one drive line.

As illustrated in FIGS. 1 and 6, there are nine inhibit drivers 2205, one for each core plane of the stack. Each driver 2205 drives a respective sense-inhibit line SAZ that is threaded through all cores of the corresponding plane. Each SAZ line extends generally parallel to the X drive lines, but with some 1ogs, such as heretofore proposed for noise reduction. To prevent saturation of the differential-type sense amplifiers 2206, each SAZ line comprises two legs (like 2245, 2245a) that pass through respective strings of cores. These legs are conimoned to ground, as shown in FIG. 6, so that an inhibit pulse from a driver 2205 will present common mode voltages to the sense amplifiers; and thus the sense amplifiers will remain essentially unaffected because the difference between the voltages will be substantially zero.

During reading, if a l is stored at a selected main or bump area address, coincident half-select X and Y (or bump) drive currents will induce a voltage in the selected core and hence in the SAZ line. The voltage signal in line SAZ is ANDed at 2246 with a clock strobe pulse (see FIG. 5) supplied to line 2247 to provide a signal at the proper time to the respective sense amplifier 2206 (FIGS. 1, 6). These signals are suitably dot ORd (by means not shown) and amplified and delivered to a respective one of nine data lines, designated generally 2257 leading to a Selector Channel (not shown); and branches 2210 of said data lines lead to a gate for a general-purpose status register (not shown). Thus, during read, all cores at the selected address in the nine planes will be set to state, if not already at D state.

Depending on whether compute time must be allowed, there may or may not be a delay before a Write Call signal is received from thc CPU via line 347 and initiates a write cycle. During a write cycle, currents are passed through these X and Y drive lines of the selected address in directions opposite during read cycle and by conditioning the decode circuitry in the manner above explained. Thus, all these cores will be set to the l state provided a down-level signal is provided in each of the nine lines 2208 (FIGS. l and 6) from general-purpose status registers (not shown) in the CPU and selector channel.

To inhibit the setting of the cores in a selected one or more of the nine planes at the selected address to the l state (i.e., to store a 0" therein), an up-level signal is provided in the particular lines 2208 going to the respective selected planes. This up-level signal in any 2208 line, when ANDed at 2248 (FIG. 6) with the up-level signal provided at inhibit time" in a line 2249 by a clock pulse (see FiG. provides a pulse to activate a corresponding inhibit driver 2205. Each such driver 2205 sends current through the SAZ line of the respective selected plane in a direction to offset or neutralize the X drive current through the corresponding core and thus prevent coincident halfselection of said core in that plane.

Thus, during read, the selected core acts as the voltage source, and the sense amplifier 2206 constitutes the load. However, during write, the inhibit driver constitutes the voltage source, and the cores constitute the load.

If preferred, more than one common sense-inhibit line SAZ may be provided for each core plane of the stack. On the other hand, separate sense windings and inhibit windings may `be used without departing from the scope and spirit of the invention. To facilitate understanding of the invention, the main storage area has been illustrated as being of 8K capacity; however, it is to be understood that the main storage area may be of larger capacity (e.g., 16K, 32K or 64K) by storing address selection control data in bit positions 2, l and 0 of M register 197, respectively.

FIG. 7 illustrates another application of the present invention. Assume that additional main area storage is desired (without any additional bump area storage) to provide additional main area addresses 8192 through 16,383. Assume further that selection of an address in this 8 to 16K main storage area is controlled by the 2 bit position of M register 197 (FIG. l); i.e., if the M2 signal is down, the desired address is within the 0 to 8K area, whereas if the M2 signal is up, the desired address is within the 8 to 16K storage area.

As illustrated in FIG. 7, if bump area 2202 or 2203 is to be addressed, an up-level signal will be provided in the CPU bump line or UCW bump line, respectively (see FIG. 1). This up-level signal will be inverted by a positive OR invert gate and provide down-level signals to branches of a line 101 connected to two negative OR invert gates 102, 103. Also, the 2 bit position of M register 197 is connected via branches of a line 104 to the OR gates 102, 103. Hence, if a down-level signal is present either in line 101 or in line 104, up-level signals will be be provided in lines 105 and 106. An inverter 107 will invert the up-level signal in line 105 and provide a downlevel signal in a line 108. Thus, positive AND invert gates 109 and 110 cannot be satistied so long as either bump storage area 2202 or 2203 is being addressed.

Meanwhile, the up-level signal provided in line 106 will permit positive AND invert gates 111 and 112 to be satisfied when up-level signals are provided in a line 113 (comparable to line 2231 in FIG. 2) at phase read time and in a line 114 at phase write time, respectively.

More specically, when the AND invert gate 111 is satisfied at phase read time, a down-level signal will be provided in a line 115 and inverted by a negative OR invert gate 116 to provide an up-level signal to turn on a corresponding gate terminator 117 (comparable to terminator `223 in FIG. 2). This gate terminator provides current for reading addresses in the selected bump storage area (as Well as in the 0 to 8K main storage area), in the manner already explained in connection with the description of FIGS. 1 to 6.

Later, at phase write time, when AND invert gate 112 is satisfied, a down-level signal will be provided in a line 118 and inverted by a negative OR invert gate 119 to provide an up-level signal to turn on a corresponding gate terminator 120. This gate terminator provides current for writing in the selected bump area address (as well as in the 0 to 8K main storage area), in the manner also already explained above.

It is to be noted that the output from AND invert gate 109 constitutes one input to negative OR invert gate 119; and the output from AND invert gate 110 constitutes one input to negative OR invert gate 116. As above noted, these AND gates 109, 110 cannot be satisiied when a bump area address is to be selected and an up-level signal is thus provided in the CPU or UCW bump line. Conversely, if down-level signals are present in both the CPU and UCW bump lines, the level of M2 bit signal will exclusively determine whether an address is to be selected in the 0 to 3K or 8 to 16K main storage area. Thus, gate terminator 117 will provide current for writing any address within the 8 to 16K main storage area. Similarly, gate terminator i120 will provide current for reading any address in the 8 to 16K main storage area.

It will thus be seen, from the foregoing, that preselection of an address within either bump area 2202 or 2203 and the consequent up-level signal provided in the CPU bump line or UCW bump line will automatically condition the address selection control apparatus to override or nullify whatever data may then be present in the M2 bit position (as Well as the M7 and M6 bit positions, in the manner already explained in connection with FIGS. l to 6). Nullification of data in the M2 bit position will positively prevent activation of the gate terminator circuits that control addressing within the 8 to 16K main storage area, and permit activation only of the gate terminator circuits that control addresses within the 0 to 8K main storage area and bump storage area.

While the invention has been particularly shown and described with reference to preferred embodiments thereof, it will be understood .by those skilled in the art that the foregoing and other changes in form and details may be made therein without departing from the spirit and scope of the invention.

What is claimed is:

1. Apparatus for selectively addressing a selectable data-containing address in one or the other of two separate and distinct data storage areas having different numbers of respective address-decoding drive lines, comprising:

4. In a data processing system, the combination of two matrix arrays of square hysteresis loop ferrite cores, one array having M parallel strings of cores address register means having bits of data for controlin one address dimension and the other array having ling address selection, 5 a lesser number L strings in the same dimension, means independent 0f Said bits fOr PreSeieCiing Wi'iiCi'i M plus L drive lines each coupled to a respective string of the areas is to be addressed, of cores, means including means responsive to the preselecting one gaie transistor per drive line,

means and an OUPU Corresponding i0 ine data in one gate terminator connected via respective unidireclhe address register ineens fOr energizing a Corre' 10 tional devices to the collector of each gate transistor Spending Unique One 0f the drive lines in tile Preand serving as a common current source for all drive selected area, and lines of both arrays, means Controlled by ine PreSeieCing rneanS and Opere a separate driver decode circuit connected to the emittive, UPOn PreSeieeiiOn 0f ii'ie One area having ine ter of each gate transistor to serve as an individual fewer mlmber 0f drive lilies, i0 Prevent drive iine 15 current sink for the corresponding drive line when energization in said one area from being influenced the transistor is conducting, by any invalid Combinations 0f dare in Said address an address register having a predetermined number of reglSier ineanS- bit positions containing data suicient to provide no 2- In COmbinaiiOn, more than M possible outputs, 011C data SOrHge area having a Certain number 0f 20 means for preselecting the array in which the drive address-decoding drive lines coupled to respective lines are to be selected, arrd Strings 0f data-Containing address elements gate decode means for decoding the data in said preanother data storage area different from said one area determined bit positions to provide arr output signal and having a lesser number of address-decoding drive to the base of a corresponding unique Une of the gate iines eOUPied t0 respective other strings of address 25 transistors in the preselected array to render such eiernenrs transistor conductive for energizing the corresponding address register means having a predetermined number drive une,

0f data-containing binary bit positlonS, t said preselecting means being effective upon preselec decode means for decoding the. data in said prcdete'rtion of said other array to provide an input signal to mine@ blt Posmms mw a unique one of up to sind said gate decode means to so modify operation of ce1-tarn number of outputs, t the latter that all bit positions beyond those remeans independent of said address register means for quired to provide a unique one of the L output Sigpreselecting which of the areas is to be addressed, Hats will be rendered ineiectivemeans including mefms responsive to the preseleting 5. The combination, with two separate and distinct stormeans and.the umque decode@ OutPut i energlze a age areas having different data-storing address capacities, corresponding one of the drive lines in the preor Selecta? H rea md address register means having a certain number of means lmthm safd decode means m5901151@ to pre` bit positions for receiving binary coded data sufficient selectlon of Sau? other area to condition Said. decode to identify the address to be selected in either of said means to invalidate data from all bit positions bestorage areas f yon'd those requlred to Select a umque me of the means for decoding any number of addresses up to the ouipins necessagy tof electl? corresponding one of maximum identifiable by said certain number of bit sai esser num er o rive mes. 3. In a data processing system, the combination of posilonsf tldlcorrespgndfg Substantially to the ca' two matrix arrays of square hysteresis loop ferrite cores, mis; lie eldrtgefothaladrrss ister means and one array having M parallel strings of cores in one conditionizible to render the last-rrgientioned means address dimension and the other array having a effective to decode addresses from either of said areas lesser number L strings in the same dimension, t selectively and M Pflus L dnve lmes each coupled to a respective stung means including said conditionable means effective dur- On gesansstor per drive une ing decoding of addresses in the smaller capacity storage area to invalidate data from those particular one gate terminator connected via respective unidirecbit osttons controlli addresses exceedin th tional devices to the collector of each gate transistor .p l g g e Ca and servin as a common current source for all drive Pagny of the Smal. er storage area thereby to preyem lines of bogth arrays incorrect addresslng as a result of any potentially one driver decode circuit connected to the emitter of 6 llraclttgnsald particular blt posmons' elch gate transistor to sferve a.s an.mdmdual current two distinct data storage areas containing respective sink for the corresponding drive line when the tranpruramtes of data Storage elements sistor is conducting, an address register having a predetermined number of M dumciuelytenerglz ble dtmfe hues fforelecnvely ad" bit positions containing data sufficient to provide no I ressmg s Obrage e emen. s one o .sal area-s more than M possible outputs, a esser Tun-.i elr L (clad unitque y energizable drive lines means for preselecting the array in which the drive for Se ectll'ey a ressmg Storage elements m the lines are to be selected, and other of 5.3m areas gate decode means for decoding the data in said predeaddress. register @sans havmg dat? llts decodable to termined bit positions to provide an output signal to provide M possible Output Combmatons' the base of a corresponding unique one of the gate means for preselecting the storage area to be addressed, transistors in the preselected array to render Such a separate transistor for controlling energization of each transistor conductive for energizing the corresponddrive line, and ing drive line, said gate decode means being condidecode means responsive to the preselecting means and tioned by preselection of said other array to disregard t0 the dara in the ddreSS register means i0 render data from all address register positions beyond those Conductive a unique one of the transistors for thereby required to provide a unique one of L output signals energizing its corresponding drive line, said decode necessary to select a corresponding one of L drive means being conditioned upon preselection of said lines. other storage area to disregard and render ineffective all data bits beyond those required to energize a unique one of L drive lines, thereby to cause a unique one of M-l-L drive lines to be energized with only M output combinations of address register bits and at the sarne time prevent drive line energization in said other storage area from being influenced by invalid data in said address register means.

References Cited by the Examiner 12 Edwards et a1. 340-1725 Terzian 340-1725 Sarrafian 340-174 Krarnskoy 340-1725 Eckert et al. 340-1725 Cochrane 340-174 Stowe 340-347 MacDonald et al. 340-1725 Strachey 340-1725 Sacerdoti et al. S40-172.5

ROBERT C. BAILEY, Primary Examiner.

I P. VANDENBURG, Assistant Examiner. 

1. APPARATUS FOR SELECTIVELY ADDRESSING A SELECTABLE DATA-CONTAINING ADDRESS IN ONE OR THE OTHER OF TWO SEPARATE AND DISTINCT DATA STORAGE AREAS HAVING DIFFERENT NUMBERS OF RESPECTIVE ADDRESS-DECODING DRIVE LINES, COMPRISING: ADDRESS REGISTER MEANS HAVING BITS OF DATA FOR CONTROLLING ADDRESS SELECTION, MEANS INDEPENDENT OF SAID BITS FOR PRESELECTING WHICH OF THE AREAS IS TO BE ADDRESSED, MEANS INCLUDING MEANS RESPONSIVE TO THE PRESELECTING MEANS AND AN OUTPUT CORRESPONDING TO THE DATA IN THE ADDRESS REGISTER MEANS FOR ENERGIZING A CORRESPONDING UNIQUE ONE OF THE DRIVE LINES IN THE PRESELECTED AREA, AND MEANS CONTROLLED BY THE PRESELECTING MEANS AND OPERATIVE, UPON PRESELECTION OF THE ONE AREA HAVING THE FEWER NUMBER OF DRIVE LINES, TO PREVENT DRIVE LINE ENERGIZATION IN SAID ONE AREA FROM BEING INFLUENCED BY ANY INVALID COMBINATIONS OF DATA IN SAID ADDRESS REGISTER MEANS. 